우분투 20.04 서버의 `mistral-env` 콘다 가상환경에서 우리가 작성한 FastAPI 기반의 파이썬 백엔드 서버(`backend/main.py`)를 실행하는 방법을 안내해 드립니다.

다음 단계를 차례대로 서버 터미널에 입력하여 실행해 주세요.

### 1. 가상환경 활성화 및 프로젝트 폴더 이동
먼저 설정해두신 콘다 가상환경을 활성화하고, `main.py`가 있는 backend 폴더로 이동합니다.
```bash
# 콘다 가상환경 활성화
conda activate mistral-env

# 파이썬 서버 파일이 있는 백엔드 디렉토리로 이동 (경로는 실제 서버 환경에 맞게 수정해주세요)
cd /경로/어딘가/MMCL/backend
```

### 2. 필요한 파이썬 패키지 설치
FastAPI 웹 서버를 구동하기 위해 `uvicorn`과 코드 내에서 사용된 라이브러리(`fastapi`, `pymysql`, `requests`)가 설치되어 있어야 합니다.
```bash
pip install fastapi uvicorn pymysql requests
```

### 3. 파이썬 백엔드 서버 구동
설치가 완료되면 `uvicorn` 명령어를 통해 서버를 실행합니다.

**방법 A: 포그라운드 실행 (개발 및 테스트용)**
터미널 창을 닫으면 서버도 같이 종료됩니다. 코드 수정 시 자동으로 재시작되는 `--reload` 옵션을 사용할 수 있습니다.
```bash
uvicorn main:app --host 0.0.0.0 --port 8000 --reload
```
*(기본 포트는 8000번을 사용하게 되며, 필요시 `--port` 숫자를 변경하시면 됩니다.)*

**방법 B: 백그라운드 무중단 실행 (운영용)**
SSH 터미널 접속을 끊어도 서버가 계속 돌아가게 하려면 `nohup`을 사용합니다.
```bash
nohup uvicorn main:app --host 0.0.0.0 --port 8000 > backend.log 2>&1 &
```
*이 명령어를 실행하면 로그가 `backend.log` 파일에 저장되며, 서버가 백그라운드에서 계속 실행됩니다.*

---

### 💡 참고 (LLM API 주소 설정)
현재 `main.py` 30번 라인에는 Mistral LLM 서버 API 주소가 Ollama 기본 주소로 하드코딩되어 있습니다.
```python
OLLAMA_API_URL = "http://localhost:11434/api/generate"
```
만약 우분투 서버에서 Ollama가 아닌 vLLM이나 HuggingFace Text Generation Inference(TGI) 등을 사용하여 직접 띄우셨다면, 해당 주소 및 요청 JSON 형식이 다를 수 있으니 서버 구동 후 LLM API 연동이 잘 되는지 확인이 필요합니다.